package com.wpp.rabbitmq.b_work;

import com.wpp.rabbitmq.ProducerApplication;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;

/**
 * @author wpp25
 * @date 2019/11/19 21:26
 * @description：
 * Work Queues与入门程序的简单模式相比，多了一个或一些消费端，多个消费端共同消费同一个队列中的消息。**应用场景：对于任务过重或任务较多情况使用工作队列可以提高任务处理的速度。**
 *
 * **在一个队列中如果有多个消费者，那么消费者之间对于同一个消息的关系是竞争的关系
 */
@SpringBootTest(classes = ProducerApplication.class)
@RunWith(SpringRunner.class)
public class WorkQueues {

    @Autowired
    private RabbitTemplate rabbitTemplate;

    @Test
    public void testWorkQueues() {
        for (int i = 0; i < 1000; i++){
            rabbitTemplate.convertAndSend("02_work_queue", "你好, 小兔子" + i);
        }
    }

}
